/**
 * 
 */
package org.cuatrovientos.legiones;

import java.util.Random;

/**
 * Representa una Unidad genérica de la legión
 * @author Caius Contomatus
 *
 */
public class Unidad {
	protected static final int MAX_VALUE = 6;
	protected int ataque;
	protected int defensa;
	Random random= new Random();
	protected int vidaCaballo;
	
	/**
	 * default constructor
	 */
	public Unidad () {
		this.ataque = random.nextInt(MAX_VALUE) + 1;
		this.defensa = random.nextInt(MAX_VALUE) + 1;
	}
	
	/**
	 * constructor using fields
	 * @param ataque
	 * @param defensa
	 */
	public Unidad (int ataque, int defensa) {
		this.ataque = ataque;
		this.defensa = defensa;
	}
	
	/**
	 * method 
	 */
	public void cabalgar () {
		System.out.println("Estoy cabalgando");
	}
	
	/**
	 * method atacar
	 * @return
	 */
	public int atacar () {
		int total = 0;
		int aleatorio = random.nextInt(MAX_VALUE);
		total = aleatorio + ataque;
		return total;
	}
	
	/**
	 * method defensa
	 * @return
	 */
	public int defensa () {
		int total = 0;
		int aleatorio = random.nextInt(MAX_VALUE);
		total = aleatorio + defensa;
		return total;
	}

	/* (non-Javadoc)
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "Unidad [ataque=" + ataque + ", defensa=" + defensa + "]";
	}
	/**
	 * 
	 * @return
	 */
	public int getAtaque() {
		return ataque;
	}
	/**
	 * 
	 * @param ataque
	 */
	public void setAtaque(int ataque) {
		this.ataque = ataque;
	}
	/**
	 * 
	 * @return
	 */
	public int getDefensa() {
		return defensa;
	}
	/**
	 * 
	 * @param defensa
	 */
	public void setDefensa(int defensa) {
		this.defensa = defensa;
	}
	/**
	 * 
	 * @return
	 */
	public int getVidaCaballo() {
		return vidaCaballo;
	}
	
	/**
	 * 
	 * @param vidaCaballo
	 */
	public void setVidaCaballo(int vidaCaballo) {
		this.vidaCaballo = vidaCaballo;
	}
	
}
